Message-oriented middleware is infrastructure that increases the interoperability, portability, and flexibility of software applications by allowing the software applications to communicate one with another by transmitting messages therebetween. Message-oriented middleware reduces the complexity of developing software applications that span multiple operating systems and network protocols by insulating application developers from the details of the various operating system and network interfaces. Accordingly, software developers can more easily integrate new software applications with existing software applications.
In typical message-oriented middleware configurations, messages are transmitted from one software application to another by way of one or more message brokers. However, a message broker may occasionally fail or otherwise enter into a fault state in which it is unable to relay messages to and from software applications associated therewith. An inoperable message broker can cause undesirable delays, consume valuable network resources, and result in frustrating experiences for end users who rely on the software applications associated with the message broker.